﻿Option Explicit On
Option Strict On

''' <summary>
''' Formulario Alta Cliente: Para dar de alta clientes en la BBDD
''' </summary>
''' <author>David Martínez</author>

Public Class AltaCliente

    ' Private BaseDatos As BBDD

    Private _Nombre As String
    Private _Apellidos As String
    Private _DNI As String
    Private _Telefono As String
    Private _Email As String

    Private objetoBBDD As BBDD
    Private miCliente As Cliente


    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        'Para cuando anyada un cliente



        'Variables booleanas para validar campos
        Dim emailCorrecto As Boolean
        Dim todoCorrecto As Boolean
        Dim DniCorrecto As Boolean
        Dim telefonoCorrecto As Boolean
        Dim datosCorrectos As Boolean


        _Nombre = tbNombre.Text
        _Apellidos = tbApellidos.Text
        _DNI = tbDNI.Text
        _Telefono = tbTelefono.Text
        _Email = tbEmail.Text

        'Validamos los campos

        If (Validaciones.comprobarVacio(_Nombre)) Or (Validaciones.comprobarVacio(_Apellidos)) Or (Validaciones.comprobarVacio(_DNI)) Or (Validaciones.comprobarVacio(_Telefono)) Or (Validaciones.comprobarVacio(_Email)) Then
            MsgBox("No puede haber campos vacios")
        Else
            datosCorrectos = True
        End If


        If _DNI <> "" Then
            If (Validaciones.comprobarDNI(_DNI)) = False Then
                MsgBox("DNI incorrecto")
            Else
                DniCorrecto = True
            End If

        End If

        If _Telefono <> "" Then
            If Validaciones.comprobarTelefono(_Telefono) = False Then
                MsgBox("Telefono no valido")
            Else
                telefonoCorrecto = True
            End If
        End If

        If _Email <> "" Then
            If Not comprobarEmail(_Email) Then
                MsgBox("Email no valido")
            Else
                emailCorrecto = True
            End If
        End If

        If datosCorrectos And DniCorrecto And telefonoCorrecto And emailcorrecto Then
            todoCorrecto = True
        End If


        If todoCorrecto Then



            miCliente.DNI = _DNI
            miCliente.Telefono = _Telefono
            miCliente.Nombre = _Nombre
            miCliente.Apellidos = _Apellidos
            miCliente.Email = _Email


            'Finalmente añadimos el cliente a la BBDD

            Try
                objetoBBDD.Conectar()
                If objetoBBDD.InsertarCliente(miCliente) Then
                    MsgBox("Añadido satisfactoriamente")
                End If
            Catch ex As Exception
                objetoBBDD.Desconectar()
                MsgBox("Ha habido un error")
            End Try

            objetoBBDD.Desconectar()

        End If



    End Sub


    Private Sub AltaCliente_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        'Inicializamos
        miCliente = New Cliente
        objetoBBDD = New BBDD


    End Sub
End Class